package com.hyt.it.ogt.kq.service.gov.roomdata.model.gce;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * GCE考试系统考务包xml文件ExamInfo节点
 * </p>
 *
 * @author huangyh
 * @since 2022-03-02
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "GCE考试系统考务包xml文件ExamInfo节点", description = "GCE考试系统考务包xml文件ExamInfo节点")
public class GceExamInfo implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "加时分钟数，单位分钟")
	@XStreamAlias("AddTimeLimit")
	private String overtimeLimit;

	@ApiModelProperty(value = "考试任务编号")
	@XStreamAlias("ExamCode")
	private String taskCode;

	@ApiModelProperty(value = "考试任务名称")
	@XStreamAlias("ExamName")
	private String taskName;

	@ApiModelProperty(value = "考试类型：1：正式考试，2：模拟考试")
	@XStreamAlias("ExamMode")
	private String examType;

	@ApiModelProperty(value = "允许迟到时间(单位分钟， 0为不允许迟到)")
	@XStreamAlias("BeLateFor")
	private String lateTime;

	@ApiModelProperty(value = "允许提前交卷时间(单位分钟，0为不允许提前交卷)")
	@XStreamAlias("AheadCallback")
	private String handInTime;

	@ApiModelProperty(value = "允许整场考试中断的分钟数")
	@XStreamAlias("BreakTime")
	private String interruptTime;

	@ApiModelProperty(value = "允许推迟开考分钟数")
	@XStreamAlias("WaitStartExam")
	private String putOffTime;

	@ApiModelProperty(value = "允许提前开考分钟数")
	@XStreamAlias("AheadStartExam")
	private String aheadTime;

	@ApiModelProperty(value = "解锁屏密码")
	@XStreamAlias("UndoPassword")
	private String unlockPassword;

	@ApiModelProperty(value = "上传考试结果包含项")
	@XStreamAlias("UploadDataOption")
	private String resultContain;

	@ApiModelProperty(value = "上传考试过程状态数据周期")
	@XStreamAlias("UploadDataPeriod")
	private String processReportFrequency;

	@ApiModelProperty(value = "考试年份")
	@XStreamAlias("ExamYear")
	private String year;

	@ApiModelProperty(value = "省份编号")
	@XStreamAlias("ProvinceNo")
	private String provinceCode;

	@ApiModelProperty(value = "省份名称")
	@XStreamAlias("ProvinceName")
	private String provinceName;

	@ApiModelProperty(value = "市编号")
	@XStreamAlias("CityNo")
	private String cityCode;

	@ApiModelProperty(value = "市名称")
	@XStreamAlias("CityName")
	private String cityName;

	@ApiModelProperty(value = "区县编号")
	@XStreamAlias("CountyNo")
	private String districtCode;

	@ApiModelProperty(value = "区县名称")
	@XStreamAlias("CountyName")
	private String districtName;

	@ApiModelProperty(value = "考点编号")
	@XStreamAlias("ExamPlaceNo")
	private String placeCode;

	@ApiModelProperty(value = "考点名称")
	@XStreamAlias("ExamPlaceName")
	private String placeName;

	@ApiModelProperty(value = "考场编号")
	@XStreamAlias("ExamRoomNo")
	private String roomCode;

	@ApiModelProperty(value = "考场名称")
	@XStreamAlias("ExamRoomName")
	private String roomName;

	@ApiModelProperty(value = "考场类型")
	@XStreamAlias("ExamRoomType")
	private String roomType;

	@ApiModelProperty(value = "机位数")
	@XStreamAlias("SeatCount")
	private String seatCount;

	@ApiModelProperty(value = "备用机位数")
	@XStreamAlias("BackupSeatCount")
	private String reserveSeatCount;

	@ApiModelProperty(value = "考场地址")
	@XStreamAlias("Position")
	private String address;

	@ApiModelProperty(value = "考试类型编号（详见'GCEExamClassCodeEnum.java'）")
	@XStreamAlias("ExamClassCode")
	private String examClassCode;

	@ApiModelProperty(value = "是否可以访问外网1.可以访问；2.不可以访问")
	@XStreamAlias("IsOpenExtranetVisit")
	private String internetAccess;

	@ApiModelProperty(value = "考生访问外网整场密码")
	@XStreamAlias("ThroughoutThePwd")
	private String internetAccessPassword;

	@ApiModelProperty(value = "考生客户端访问外网密码")
	@XStreamAlias("ExamineeClientVisitPwd")
	private String clientInternetAccessPassword;

	@ApiModelProperty(value = "作答预警时间段（分钟）")
	@XStreamAlias("ReplyPeriod")
	private String respondWarningFrequency;

	@ApiModelProperty(value = "作答时间段预警答题数")
	@XStreamAlias("ReplyNum")
	private String respondItemWarningAmount;

	@ApiModelProperty(value = "未作答预警时间段（分钟）")
	@XStreamAlias("UnReplyPeriod")
	private String noneRespondWarningFrequency;

	@ApiModelProperty(value = "是否签到后允许登陆")
	@XStreamAlias("IsLoginAfterSign")
	private String loginAfterSign;

	@ApiModelProperty(value = "考试任务类型，1：正式，2：仿真，3：模拟")
	@XStreamAlias("ProjectType")
	private String taskType;

	@ApiModelProperty(value = "行为分析规则规定，详见'TaskConfigCodeEnum.java'和'GceBehaviorAnalysisConfig.java'")
	@XStreamAlias("BehaviorList")
	private String behaviorAnalysisConfig;

	@ApiModelProperty(value = "是否启用行为分析规则")
	@XStreamAlias("EnableBehavior")
	private String enableBehaviorAnalysis;

	@ApiModelProperty(value = "拦截其他应用")
	@XStreamAlias("BlockOtherApp")
	private String blockOtherApp;

	@ApiModelProperty(value = "FTP地址")
	@XStreamAlias("FTPURL1")
	private String ftpUrl;

	@ApiModelProperty(value = "暂时用不上（用途未知）")
	@XStreamAlias("PublicKey")
	private String publicKey;

}
